home *** CD-ROM | disk | FTP | other *** search
/ CU Amiga Super CD-ROM 14 / CU Amiga Magazine's Super CD-ROM 14 (1997)(EMAP Images)(GB)(Track 1 of 3)[!][issue 1997-09].iso / CUCD / Programming / Mesa-2.2 / src / stencil.h < prev    next >
Encoding:
C/C++ Source or Header  |  1997-03-13  |  2.3 KB  |  90 lines

  1. /* $Id: stencil.h,v 1.1 1996/09/13 01:38:16 brianp Exp $ */
  2.  
  3. /*
  4.  * Mesa 3-D graphics library
  5.  * Version:  2.0
  6.  * Copyright (C) 1995-1996  Brian Paul
  7.  *
  8.  * This library is free software; you can redistribute it and/or
  9.  * modify it under the terms of the GNU Library General Public
  10.  * License as published by the Free Software Foundation; either
  11.  * version 2 of the License, or (at your option) any later version.
  12.  *
  13.  * This library is distributed in the hope that it will be useful,
  14.  * but WITHOUT ANY WARRANTY; without even the implied warranty of
  15.  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
  16.  * Library General Public License for more details.
  17.  *
  18.  * You should have received a copy of the GNU Library General Public
  19.  * License along with this library; if not, write to the Free
  20.  * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  21.  */
  22.  
  23.  
  24. /*
  25.  * $Log: stencil.h,v $
  26.  * Revision 1.1  1996/09/13 01:38:16  brianp
  27.  * Initial revision
  28.  *
  29.  */
  30.  
  31.  
  32. #ifndef STENCIL_H
  33. #define STENCIL_H
  34.  
  35.  
  36. #include "types.h"
  37.  
  38.  
  39. extern void gl_ClearStencil( GLcontext *ctx, GLint s );
  40.  
  41.  
  42. extern void gl_StencilFunc( GLcontext *ctx, GLenum func,
  43.                             GLint ref, GLuint mask );
  44.  
  45.  
  46. extern void gl_StencilMask( GLcontext *ctx, GLuint mask );
  47.  
  48.  
  49. extern void gl_StencilOp( GLcontext *ctx, GLenum fail,
  50.                           GLenum zfail, GLenum zpass );
  51.  
  52.  
  53.  
  54. extern GLint gl_stencil_span( GLcontext *ctx,
  55.                               GLuint n, GLint x, GLint y, GLubyte mask[] );
  56.  
  57.  
  58. extern void gl_depth_stencil_span( GLcontext *ctx, GLuint n, GLint x, GLint y,
  59.                    const GLdepth z[], GLubyte mask[] );
  60.  
  61.  
  62. extern GLint gl_stencil_pixels( GLcontext *ctx,
  63.                                 GLuint n, const GLint x[], const GLint y[],
  64.                     GLubyte mask[] );
  65.  
  66.  
  67. extern void gl_depth_stencil_pixels( GLcontext *ctx,
  68.                                      GLuint n, const GLint x[],
  69.                      const GLint y[], const GLdepth z[],
  70.                      GLubyte mask[] );
  71.  
  72.  
  73. extern void gl_read_stencil_span( GLcontext *ctx,
  74.                                   GLuint n, GLint x, GLint y,
  75.                   GLubyte stencil[] );
  76.  
  77.  
  78. extern void gl_write_stencil_span( GLcontext *ctx,
  79.                                    GLuint n, GLint x, GLint y,
  80.                    const GLubyte stencil[] );
  81.  
  82.  
  83. extern void gl_alloc_stencil_buffer( GLcontext *ctx );
  84.  
  85.  
  86. extern void gl_clear_stencil_buffer( GLcontext *ctx );
  87.  
  88.  
  89. #endif
  90.